package com.shijunhao.graduation.service.business;

import com.shijunhao.graduation.domain.dto.BusinessNoteDto;
import com.shijunhao.graduation.domain.dto.BusinessSourcesDto;
import com.shijunhao.graduation.domain.entity.BusinessSources;
import com.shijunhao.graduation.domain.vo.BusinessSourceInfoVo;
import com.shijunhao.graduation.domain.vo.BusinessSourcesListVo;
import com.shijunhao.graduation.domain.vo.BusinessSourcesVo;
import com.shijunhao.graduation.service.system.BaseService;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author shijunhao
 * @since 2022-04-16
 */
public interface IBusinessSourcesService extends BaseService<BusinessSources> {
    Long insert(BusinessSourcesDto dto);

    /**
     * @return: com.shijunhao.graduation.domain.vo.BusinessSourcesVo
     * @author: shijunhao
     * @date: 2022/4/16 19:43
     * @description: 转化为私有显示实体
     */
    BusinessSourcesVo toVo(BusinessSources entity);

    /**
     * @param entity:
     * @return: com.shijunhao.graduation.domain.vo.BusinessSourcesListVo
     * @author: shijunhao
     * @date: 2022/4/16 23:03
     * @description: 转化为公有显示实体
     */
    BusinessSourcesListVo toListVo(BusinessSources entity);

    /**
     * @param id: 资源id
     * @return: boolean
     * @author: shijunhao
     * @date: 2022/4/16 20:20
     * @description: 删除资源
     */
    boolean deleteById(Long id);


    /**
     * @param entity: 实体信息
     * @return: boolean
     * @author: shijunhao
     * @date: 2022/4/16 21:26
     * @description: 更新信息
     */
    boolean update(BusinessSources entity);

    /**
     * @param entity: 实体信息
     * @return: com.shijunhao.graduation.domain.vo.BusinessSourceInfoVo
     * @author: shijunhao
     * @date: 2022/4/17 1:33
     * @description: 实体信息转详情信息
     */
    BusinessSourceInfoVo toInfoVo(BusinessSources entity);
}
